using System;

namespace Tyng.Data.Utilities
{
	//indexes must match extension list...
	public enum DatabaseObjectType
	{
		Table = 2,
		View = 5,
		StoredProcedure = 0,
		UserDefinedFunction = 4,
		Trigger = 3,
		Generic = 1			
	};

	public static class Constants
	{
		public const string DependencyPrefix =	"--DEPENDENCY:";
	
		//KEEP THE FILE NAMES IN UPPERCASE!!!

		//default raw triggers file
		public const string TriggersFile = "TRIGGERS.SQL";

		//source for first / last file
		public const string FirstFile = "BEGIN.SQL";
		public const string LastFile = "END.SQL";


        public const string ConfigFileExtension = ".CONFIG";
        public const string ColumnReplacePrefix = VariablePrefix + "Column";
        public const string VariablePrefix = "@";

		//keep these in	alpha order
		public static string[] DatabaseObjectTypeExtensions;
		public static string[] DatabaseObjectTypeDirectories;

        public const string SeedDataExtension = ".CSV";
		
		static Constants()
		{
			//keep in alpha order by extension
            DatabaseObjectTypeExtensions = new string[] {SeedDataExtension, ".PRC", ".SQL", ".TAB", ".TRG", ".UDF", ".VIW" };
			DatabaseObjectTypeDirectories = new string[] {"Seed Data", "Stored Procedures", "", "Tables", "Triggers", "User Defined Functions", "Views"};
		}
	}
}
